From 26730f31a8dc7dd9c9098cc4200fe1cbfc1c1129 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=C3=98yvind=20Kol=C3=A5s?= Date: Thu, 12 Jun 2008 20:34:51 +0000 Subject: [PATCH] updated. updated. improved introduction and feature list. * AUTHORS: updated. * NEWS: updated. * docs/index-static.html.in: improved introduction and feature list. svn path=/trunk/; revision=325 --- AUTHORS | 10 ++++-- ChangeLog | 6 ++++ NEWS | 5 +++ docs/index-static.html.in | 65 +++++++++++++++++++++++++++++---------- 4 files changed, 67 insertions(+), 19 deletions(-) diff --git a/AUTHORS b/AUTHORS index 2806297..c461783 100644 --- a/AUTHORS +++ b/AUTHORS @@ -1,8 +1,8 @@
Øyvind Kolås pippin at gimp.org
-
Lead developer.
+
Original author.
Sven Neumann sven at gimp.org
-
Build sanity.
+
Build sanity and optimizations.
Michael Natterer mitch at gimp.org
Build sanity.
Kevin Cozens
@@ -13,5 +13,9 @@
win32 support for dynamic extensions.
Portability fixes.
Jan Heller jheller at svn.gnome.org
-
Optimizations.
+
Optimizations, refactoring and documentation.
+
Mukund Sivaramanmuks at mukund.org
+
Sparse fixes and sanity.
+
dmacks at netspace.org
+
Build sanity
diff --git a/ChangeLog b/ChangeLog index caf521e..caaa899 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2008-06-12 Øyvind Kolås + + * AUTHORS: updated. + * NEWS: updated. + * docs/index-static.html.in: improved introduction and feature list. + 2008-06-12 Jan Heller * extensions/sse-fixups.c (conv_rgbaF_linear_rgb8_linear), diff --git a/NEWS b/NEWS index fc9af9c..f78fff8 100644 --- a/NEWS +++ b/NEWS @@ -6,6 +6,11 @@ the news section both in the README and the webpage. --> +2008-06-12 babl-0.0.22
+Speed improvements due to: coalesced hashing, early bail out upon creation of +duplicate formats, caching of non existing paths. Large amounts of the core has +also been reviewed and refactored. Improved conversion coverage in the matrix. +
2008-02-27 babl-0.0.20
Builds on OSX Check <0.0 and >1.0 values conversions for accuracy as well. diff --git a/docs/index-static.html.in b/docs/index-static.html.in index 58a88b3..45dd909 100644 --- a/docs/index-static.html.in +++ b/docs/index-static.html.in @@ -94,14 +94,21 @@
-

Babl is a dynamic, any to any, pixel format conversion - library. It provides conversions between the myriad of buffer - types images can be stored in. Babl doesn't only help with existing - pixel formats, but also facilitates creation of new and uncommon - ones.

+

+
+ babl is a dynamic, any to any, pixel format translation library. +
+

+ +

It allows converting between different methods of storing pixels known as pixel formats that have + with different bitdepths and other data representations, color models and + component permutations. + +

A vocabulary to formulate new pixel formats from existing + primitives is provided as well as the framework to add new color models and + data types. +

-

GEGL uses babl both for enumeration - of pixel formats as well as conversions between them.

formats, - color models, components and datatypes -
  • Reference 64bit floating point conversions for - data types and color models.
  • +
  • Self profiling and optimizing.
  • +
  • Extendable format, color models, components and + datatypes
  • +
  • Reference 64bit floating point conversions for datatypes and color models. +
  • ANSI C, works on win32, linux and mac, 32bit and 64bit + systems.
  • +

    GEGL through GeglBuffer provides + tiled buffers with on disk storage as well as linear buffers with accessor + functions for efficient data access transparently using babl fishes for + translation to the desired pixel formats.

    +

    Download

    @@ -191,9 +205,28 @@ buffers represented by an existing BablPixelFormat.

    babl_process (babl_fish (babl_format ("srgb"), babl_format ("CIE Lab float")),
    -              srgb_buffer, lab_buffer,
    -              pixel_count);
    +>const Babl *srgb = babl_format ("R'G'B' u8"); +const Babl *lab = babl_format ("CIE Lab float"); +const Babl *rgb_to_lab_fish = babl_fish ( srgb, lab); +int width = 123, height = 581, pixel_count = width * height; +float *lab_buffer; +unsigned char *srgb_buffer; + +srgb_buffer = malloc (pixel_count * srgb->format.bytes_per_pixel); + +/* load data into srgb_buffer */ + +lab_buffer = malloc (pixel_count * 3 * 4); + +babl_process (bablfish, srgb_buffer, lab_buffer, pixel_count); + +/* do operation in lab space */ +babl_process (babl_fish(lab, srgb), + lab_buffer, srgb_buffer, pixel_count); + +/* the data has now been transformed back to srgb data */ + +

    If the existing pixel formats are not sufficient for your conversion needs, new ones can be created on the fly. The constructor -- 2.30.2